/**
 *
 */
package cc.aileron.dao;

import java.util.List;

/**
 * ページリンク
 * 
 * @author aileron
 */
public interface G2DaoPager
{
    /**
     * @param baseUrl
     */
    void baseUrl(String baseUrl);

    /**
     * @return {@link G2DaoPaging}
     */
    G2DaoPaging context();

    /**
     * @return 件数
     */
    int countAll();

    /**
     * @return 現在表示中のページ、終了件数
     */
    int countEnd();

    /**
     * @return 現在表示中のページ、開始件数
     */
    int countStart();

    /**
     * @return まえページが存在するか
     */
    boolean isPageBack();

    /**
     * @return つぎページが存在するか
     */
    boolean isPageNext();

    /**
     * @return まえへリンク
     */
    String linkBack();

    /**
     * @return 次へリンク
     */
    String linkNext();

    /**
     * @return リンク
     */
    List<G2DaoPagerLink> links();

    /**
     * @return ページ件数
     */
    int pageCount();

    /**
     * @param pageNumber
     */
    void pageNumber(int pageNumber);
}
